#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main() {
    string input;
    cout << "Введите слова в строку через пробел ";
    getline(cin, input);

    int totalWords = 0;
    int uppercaseWords = 0;
    int latinLetterWords = 0;
    int shortWords = 0;
    int wordsWithHyphen = 0;
    bool hasLatinLetter = false;
    string longestWord = "";

    vector<string> words = split(input, ' ');
    totalWords = words.size();

    for (int i = 0; i < totalWords; i++) {
        if (words[i][0] >= 'А' && words[i][0] <= 'Я') {
            uppercaseWords++;
        }

        for (int j = 0; j < words[i].length(); j++) {
            if (isalpha(words[i][j])) {
                hasLatinLetter = true;
            }
        }

        if (hasLatinLetter) {
            latinLetterWords++;
            hasLatinLetter = false;
        }

        if (words[i].length() <= 3) {
            shortWords++;
        }

        if (words[i].find('-') != string::npos) {
            wordsWithHyphen++;
        }

        if (words[i].length() > longestWord.length()) {
            longestWord = words[i];
        }
    }

    if (totalWords < 1) {
        cout << "Мало данных для анализа" << endl;
    } else {
        cout << "Кол-во слов: " << totalWords << endl;
        cout << "Кол-во слов с заглавной кириллической буквы: " << uppercaseWords << endl;
        cout << "Кол-во слов с заглавной кириллической буквы: " << latinLetterWords << endl;
        cout << "Кол-во слов не превышающих 3 символа: " << shortWords << endl;
        cout << "Кол-во слов в составе которых имеется дефис: " << wordsWithHyphen << endl;
        cout << "Самое длинное слово: " << longestWord << endl;
        cout << "Длина слова: " << longestWord.length() << endl;
    }

    return 0;
}
